package calculator;

import store.Cibo;
import dataview.Report;
import dataview.Cibi;
import dataview.TipoReportCibi;

public class GeneraReportCibi extends GeneraReport {
	
	public static Report generaReportCibi(Cibi contenuto, TipoReportCibi tipo) {
		Report report = new Report();
		report.aggiungiTitolo("Report Cibi");
		report.aCapo();
		for (Cibo cibo : contenuto) {
			report.aCapo();
			report.aggiungiRiga("nome", cibo.getNome());
			String descrizione = "";
			if (cibo.getInfo() != null && cibo.getInfo().getDescrizione() != null) descrizione = cibo.getInfo().getDescrizione();
			report.aggiungiRiga("descrizione", descrizione);
			if (tipo == TipoReportCibi.Completo) {
				if (cibo.getTag() != null) report.aggiungiRiga("classificazione", cibo.getTag().toString());
				if (cibo.getInfo() != null) {
					if (cibo.getInfo().getCalXunita() != 0 && cibo.getInfo().getUnitaRiferimento() != null) {
						report.aggiungiRiga("calorie", cibo.getInfo().getCalXunita() + " per " + cibo.getInfo().getUnitaRiferimento());
						report.aggiungiRiga("valori di analisi", cibo.getInfo().getValori().toString(cibo.getInfo().getUnitaRiferimento()));
					}
				}
			}
		}
		return report;
	}
}
